﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Model
{
    public class GorgeousInfo
    {
        public BattlePlayer Player;
        public List<BattleCard> Cards;
        //public int Gorgeous;
    }
    public class FightInfo
    {
        public BattleCard AttackCard, DefenceCard;
        public int Damage;
    }

    public class TurnInfo
    {
        public BattleStatus BattleStatus;

        public int[] INTparam;

        public BattlePlayer BattlePlayer;
    }
    /// <summary>
    /// Search窗口参数
    /// </summary>
    public class SearchInfo
    {
        public List<BattleCard> ShowCard;
        /// <summary>
        /// 点击确定执行后续的条件
        /// </summary>
        public Func<List<BattleCard>, bool> Condition;

        public Action<List<BattleCard>> OnCancel;

        public Action<List<BattleCard>> OnSure;
        
        /// <summary>
        /// 最多可选择几张卡牌
        /// </summary>
        public int MaxChooseNum;
    }
    /// <summary>
    /// 卡牌移动位置参数
    /// </summary>
    public class MoveInfo
    {
        public List<BattleCard> Cards;
        public CardPlace StartPlace, EndPlace;
        public CardGroup StartGroup, EndGroup;
    }

    public class DecideInfo
    {
        public string Describe;
        public Action CallBack;
    }
    public class PowerUseInfo
    {
        public BattlePlayer battlePlayer;
        public int PowerUse;
        public Action CallBack;
    }

    public class BattleEndInfo
    {
        public BattleEndType battleEndType;
        public BattlePlayer SpecialWinner;
    }
    public enum BattleEndType
    {
        HpLessThen0,
        DrawOutCard,
        Special,
    }
}
